// VedioPlayerDef.h

#pragma once

#include <functional>

// Close Server Dialog
typedef std::function<void()> CLOSE_SERVER_DIALOG_CALLBACK;

// Close Client Dialog
typedef std::function<void()> CLOSE_CLIENT_DIALOG_CALLBACK;

#define VP_SOCKET_CMD_LOGIN          0X00000001
#define VP_SOCKET_CMD_LOGIN_RET      0x80000001
#define VP_SOCKET_CMD_VEDIO_DATA     0x00000002
#define VP_SOCKET_CMD_VEDIO_DATA_RET 0x80000002

typedef struct _tagVPHeader
{
    DWORD dwVer;
    DWORD dwCmd;
    DWORD dwLen;
} VPHEADER, *LPVPHEADER;

typedef struct _tagVPLogin
{
    CHAR szUserName[128];
    CHAR szPassWord[128];
} VPLOGIN, *LPVPLOGIN;

typedef struct _tagVPLoginRet
{
    DWORD dwSuccess;
} VPLOGINRET, *LPVPLOGINRET;

typedef struct _tagVPVedioData
{
    DWORD videoID;
} VPVedioData, *LPVPVedioData;

typedef struct _tagVPVedioDataRet
{
    CHAR szFileName[128];
    DWORD dwFileLen;
} VPVEDIODATARET, *LPVPVEDIODATARET;
